home *** CD-ROM | disk | FTP | other *** search
/ Danny Amor's Online Library / Danny Amor's Online Library - Volume 1.iso / html / faqs / faq / oberon-faq / system < prev   
Encoding:
Text File  |  1995-07-25  |  9.0 KB  |  232 lines

  1. Subject: Comp.lang.oberon FAQ (monthly) 3 of 3
  2. Newsgroups: comp.lang.oberon,comp.answers,news.answers
  3. From: mikeg@psg.com (Mike Gallo)
  4. Date: Tue, 12 Jul 1994 08:50:42 GMT
  5.  
  6. Archive-name: Oberon-FAQ/system
  7.  
  8.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  9.  
  10.      Many FAQ lists, including this one, are available by anonymous
  11. ftp from rtfm.mit.edu in the /pub/usenet/news-answers directory.  
  12.      Although I have aimed for accuracy, there is no guarantee that
  13. the information in this document is error-free.  Neither the FAQ
  14. maintainer nor anyone else associated with this document assumes
  15. any liability for the content or use of this document.  If you do
  16. find any errors, please report them to the address listed below.
  17.      Thanks to all who have contributed!  Further additions,
  18. corrections, and suggestions are welcome.
  19.  
  20. mikeg@psg.com
  21.  
  22.      (*  * *  * *  * *  * *  * *  * *  * *  * *  * *  * *  *)
  23.  
  24. Comp.lang.oberon Frequently Asked Questions
  25. The Operating System
  26.  
  27.  
  28. Copyright 1994 Michael Gallo
  29. (c) 1994 Michael Gallo
  30.  
  31.  
  32.      This is one of three documents that attempt to answer some
  33. frequently asked questions (FAQs) about Oberon.  This text concerns
  34. the Oberon system, while the other two are about general topics and
  35. about Oberon the programming language.
  36.  
  37.  
  38. THE OBERON SYSTEM
  39.  
  40. >From "The Oberon Guide"
  41.  
  42.           For the present, we focus on the system Oberon, beginning
  43.      with a brief overview of its design principles. The underlying
  44.      dynamic model is extremely simple. There exists a single
  45.      process acting as a common carrier of multiple tasks. This
  46.      process repetitively interprets commands, which are the
  47.      official entities of execution in Oberon. Commands are atomic
  48.      actions operating on the global state of the system. Unlike
  49.      customary interactive programs, they rigorously avoid direct
  50.      dialogs with the system user.
  51.  
  52.      Besides "single-process multitasking" and execution of
  53. commands in lieu of programs, the Oberon System also features
  54. automatic garbage collection, dynamic loading and unloading of
  55. memory resident modules, text as a built-in abstract data type,
  56. tools for editing text and graphics, and program development tools.
  57.  
  58. >From "Oberon: A Glimpse at the Future"
  59.  
  60.           The result is a system that provides efficiency and
  61.      reliability rather than offering inflated size, which
  62.      dramatically increases the probability of bugs and flaws.
  63.           What is most astonishing about Oberon is its smallness. 
  64.      The core operating system -- including the Oberon compiler --
  65.      occupies only 131 KB, which is smaller than most [Microsoft
  66.      (tm)] Windows utilities.
  67.  
  68.  
  69. OBERON SYSTEM 3
  70.  
  71. >From "Oberon System 3 -- A Realm of Persistent Objects"
  72.  
  73.           We soon decided to realize our ideas by developing System
  74.      3, an evolutionary version of the original Oberon system. From
  75.      our vision and from examples like the one in Figure 1 it
  76.      followed immediately that System 3 needs to be settled one
  77.      important step beyond the ordinary state of object-oriented
  78.      programming because it needs to be able to manage hundreds or
  79.      even thousands of persistent objects and components that can
  80.      appear in extensive variety, including at least character
  81.      patterns, formulae, all kinds of figures, pictures, gadgets
  82.      and widgets. What was obviously needed is a central object
  83.      management and some concept like object library.
  84.  
  85.  
  86. GADGETS
  87.  
  88. >From "The GADGETS User Interface Management System"
  89.  
  90.           The GADGETS user interface management system (UIMS)
  91.      is a graphical user interface to the Oberon system. 
  92.      Although it is based on the representation model of
  93.      windowing user interfaces such as X Windows and
  94.      Presentation Manager, GADGETS is a conceptual departure
  95.      from the conventional graphical user interface (GUI). 
  96.      Several features such as the separation of application
  97.      code and user interface, the interactive modification of
  98.      user interfaces while applications are executing, the
  99.      automatic generation of default user interfaces for
  100.      applications, and the simplification of user interface
  101.      programming have been incorporated into GADGETS.  The
  102.      result is smaller, easier to build application programs
  103.      with a high level of integration between each other and
  104.      the Oberon system.  The GADGETS UIMS is extensible and
  105.      provides a prototyping environment for alternative man-
  106.      machine interaction styles.  The high level of
  107.      integration of GADGETS with the Oberon system makes the
  108.      addition of graphical user interfaces to existing Oberon
  109.      applications a relatively easy task.
  110.  
  111.  
  112. DIFFERENT VERSIONS OF OBERON
  113.  
  114. "Is Oberon System version X compatible with version Y?"  
  115.  
  116. According to templ@inf.ethz.ch (Dr. Josef Templ), 
  117.  
  118.      The Oberon ancestry is as follows
  119.      Oberon = V1 ( V2  V4 | System3 )
  120.           The main difference between V1 and V2 is the introduction
  121.      of an extensible text model and the text editor Write.
  122.           The main difference between V2 and V4 is the unification
  123.      of the two text editors Edit and Write. In order to avoid
  124.      confusion with System3, the direct successor of V2 is not
  125.      named V3 but V4.
  126.           The main difference between V2 and System3 is that
  127.      System3 introduced (a year later) a more general object model
  128.      (not restricted to text elements) and the notion of persistent
  129.      object libraries.
  130.           Many programs port between the different versions without
  131.      any changes. Some programs need simple textual substitutions,
  132.      and only very few need a considerable amount of reengineering
  133.      (e.g. Write, Script).
  134.  
  135. "What version of the Oberon language is implemented in Oberon
  136. System Z?"
  137.  
  138. On 20 May 1994, templ@inf.ethz.ch (Dr. Josef Templ) wrote:
  139.  
  140.      All Oberon system versions are implemented with the (pure)
  141.      Oberon message records and handlers, not with Oberon-2
  142.      methods. This is because the viewer system, where messages are
  143.      mainly used, need utmost flexibility and extensibility.
  144.      Oberon-2 methods trade flexibility for speed.
  145.           Most compilers distributed with those systems, however,
  146.      support the Oberon-2 extensions, in particular the Windows
  147.      version, all the Unix versions, and hopefully in the near
  148.      future the Mac version.
  149.  
  150.  
  151. CONCURRENT OBERON
  152.  
  153. >From "Adding Concurrency to the Oberon System"
  154.  
  155.           Concurrency was not supported in the original Oberon
  156.      system. We have argued that, although the Oberon experience
  157.      has demonstrated that concurrency is not needed to support
  158.      interactive applications in a system with a multiple window
  159.      user interface, concurrency is nonetheless desirable in a
  160.      single user system. We have demonstrated that it can be
  161.      introduced without a significant increase in size or
  162.      complexity by developing the Concurrent Oberon system. Since
  163.      all interfaces remained the same or were extended, the
  164.      semantics of the Oberon loop were preserved. Concurrent Oberon
  165.      is completely compatible with the standard system [version 4]
  166.      and all applications run without change.
  167.  
  168.  
  169. AVAILABILITY
  170.  
  171. The original project was launched and carried out by N. Wirth and
  172. J. Gutknecht for the Ceres workstation.  As of this writing, ported
  173. versions of the Oberon system are available for the machines listed
  174. below (followed by the most recent update).  
  175.  
  176. Currently, there are no ports for Linux or OS/2.
  177.  
  178. Oberon v.4
  179.      DECstation:         Apr 12 11:55
  180.      HP700:              Jul  6 08:58
  181.      MacII:              Apr 12 11:05
  182.      RS6000:             Nov  2  1993 
  183.      SPARC:              Dec  3  1993 
  184.      SPARC/Solaris2:     Nov 26  1993 
  185.      SiliconGraphics:    Apr 12 16:14 
  186.      Windows:            May 18 12:16 
  187.  
  188. System3
  189.      DOS:      Jun 16 09:15
  190.      SPARC:    Jun 29 11:44 
  191.  
  192. These ports are freely available by anonymous ftp from:
  193.  
  194.      ftp.ethz.ch:/Oberon,
  195.      wuarchive.wustl.edu:/languages/Oberon, and
  196.      gatekeeper.dec.com:/pub/plan/Oberon
  197.  
  198.  
  199. BIBLIOGRAPHY
  200.  
  201.      Sources cited in the FAQ list that are not listed in the
  202. bibliography are electronically available in PostScript and/or
  203. Oberon text formats from ETH Zrich.  They can be acquired by
  204. anonymous ftp from:
  205.  
  206.      ftp.ethz.ch:/Oberon/Docu,
  207.      wuarchive.wustl.edu:/languages/Oberon/Docu, and
  208.      gatekeeper.dec.com:/pub/plan/Oberon/Docu
  209.  
  210. "Designing a System from Scratch" by N. Wirth; Structured
  211. Programming; 10,1 (January 1989) 10-18.
  212.  
  213. "The Oberon System" by N. Wirth and J. Gutknecht; Software:
  214. Practice and Experience; 19,9 (September 1989) 857-893.
  215.  
  216. The Oberon System: User Guide and Programmer's Manual by M. Reiser;
  217. ACM Press; 1992.  This was reviewed in Computing Reviews articles
  218. 9109-0679, 9209-0651, 9209-0652, and 9207-0443.
  219.  
  220. Project Oberon: The Design of an Operating System and Compiler by
  221. N. Wirth and J. Gutknecht; ACM Press 1992.
  222.  
  223. "Implementing an Operating System on Top of Another" by M. Franz;
  224. Software: Practice and Experience; 23,6 (June 1993) 677-692.
  225.  
  226. "Distributed Object-Oriented Programming in a Network of Personal
  227. Workstations" by Spiros Lalis; Swiss Federal Institute of
  228. Technology (ETH Zrich); 1994 (in preparation).
  229. -- 
  230. If all else fails, find a scapegoat.
  231.  
  232.